Deciding Bit-Vector Formulas with mcSAT
نویسندگان
چکیده
The Model-Constructing Satisfiability Calculus (mcSAT) is a recently proposed generalization of propositional DPLL/CDCL for reasoning modulo theories. In contrast to most DPLL(T)-based SMT solvers, which carry out conflict-driven learning only on the propositional level, mcSAT calculi can also synthesise new theory literals during learning, resulting in a simple yet very flexible framework for designing efficient decision procedures. We present an mcSAT calculus for the theory of fixed-size bit-vectors, based on tailor-made conflict-driven learning that exploits both propositional and arithmetic properties of bit-vector operations. Our procedure avoids unnecessary bit-blasting and performs well on problems from domains like software verification, and on constraints over large bit-vectors.
منابع مشابه
LCF-Style Bit-Blasting in HOL4
This paper describes a new proof tool for deciding bit-vector problems in HOL4. The approach is based on “bit-blasting”, wherein word expressions are mapped into propositional formulas, which are then handed to a SAT solver. Significantly, the implementation uses the LCF approach, which means that the soundness of the tool is guaranteed by the soundness of HOL4’s logical kernel.
متن کاملOn the Complexity of the Quantified Bit-Vector Arithmetic with Binary Encoded Bit-Widths
We study the precise computational complexity of deciding satisfiability of first-order quantified formulas over the theory of fixed-size bit-vectors with binary-encoded bit-widths and constants. This problem is known to be in EXPSPACE and to be NEXPTIME-hard. We show that this problem is complete for the complexity class AEXP(poly) – the class of problems decidable by an alternating Turing mac...
متن کاملSolving Nonlinear Integer Arithmetic with MCSAT
We present a new method for solving nonlinear integer arithmetic constraints. The method relies on the MCSat approach to solving nonlinear constraints, while using branch and bound in a conflict-directed manner. We report encouraging experimental results where the new procedure outperforms state-of-the-art SMT solvers based on bit-blasting.
متن کاملEmbedding the Virtual Substitution Method in the Model Constructing Satisfiability Calculus Framework
Satisfiability-modulo-theories (SMT ) solving is a technique to check the satisfiability of logical formulas. In the context of SMT solving, recently a novel technique called the model-constructing satisfiability calculus (MCSAT ) was introduced in [13, 9], with a nice embedding of the cylindrical algebraic decomposition method as a theory solving module for non-linear real arithmetic [7]. In t...
متن کاملSMT Queries Decomposition and Caching in Semi-Symbolic Model Checking
In semi-symbolic (control-explicit data-symbolic) model checking the state-space explosion problem is fought by representing sets of states by first-order formulas over the bit-vector theory. In this model checking approach, most of the verification time is spent in an smt solver on deciding satisfiability of quantified queries, which represent equality of symbolic states. In this paper, we int...
متن کامل